package ar.edu.utn.frgp.banco.servlets;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import ar.edu.utn.frgp.banco.domain.Cliente;
import ar.edu.utn.frgp.banco.domain.Cuenta;
import ar.edu.utn.frgp.banco.service.RecursoServiceCliente;
import ar.edu.utn.frgp.banco.service.RecursoServiceCuenta;
import ar.edu.utn.frgp.banco.service.impl.RecursoServiceClienteImpl;
import ar.edu.utn.frgp.banco.service.impl.RecursoServiceCuentaImpl;
import ar.edu.utn.frgp.banco.servlets.scope.CuentaBean;
import ar.edu.utn.frgp.banco.servlets.scope.MessageBean;

/**
 * Servlet implementation class ClienteServlet
 */
public class Transferencias1VerificarClienteServlet extends GenericServlet {
	private static final long serialVersionUID = 1L;

    /**
     * Default constructor. 
     */
    public Transferencias1VerificarClienteServlet() {
        // TODO Auto-generated constructor stub
    }

	@Override
	public void realizarAccion(HttpServletRequest req, HttpServletResponse resp) throws Exception {
		
		 String dni = (String)req.getParameter("txtDNI");
		 int dnicliente = Integer.parseInt(dni);
	     
		 Cliente  cliente = new Cliente();
		
	     RecursoServiceCliente serviceCliente = new RecursoServiceClienteImpl();
	     RecursoServiceCuenta serviceCuenta = new RecursoServiceCuentaImpl();
	     
	     cliente = serviceCliente.listarClientesActivosPorDni(dnicliente);
	     
	     String jsp = "";
			
			if (cliente == null) {
				MessageBean bean = new MessageBean();
				bean.setMensaje("No existe el cliente");
				req.setAttribute("msjBean", bean);
				jsp = "Transferencias1VerificarCliente.jsp";
			}
			else {
				
				req.getSession().setAttribute("cliente", cliente);
				jsp = "Transferencias2SeleccionarCuentas.jsp";
				
				List<Cuenta> cuentasorigen = new ArrayList<Cuenta>();		
				List<Cuenta> cuentasdestino = new ArrayList<Cuenta>();
				cuentasorigen = serviceCuenta.listarCuentasActivas(cliente.getDni());
				cuentasdestino = serviceCuenta.listarTodasLasCuentasActivas();
				
				CuentaBean beancuentaorigen = new CuentaBean();
		        beancuentaorigen.setCuentas(cuentasorigen);
		        req.setAttribute("beancuentaorigen", beancuentaorigen);
		        
		        CuentaBean beancuentadestino = new CuentaBean();
		        beancuentadestino.setCuentas(cuentasdestino);
		        req.setAttribute("beancuentadestino", beancuentadestino);
			}
		
				req.getRequestDispatcher(jsp).forward(req, resp);

		
	}
	
}
